category: sub_main
step: 4_graph
sub_step: 6_qid
in_main_macro: graph
doc_status: ready
macro graph_qid
Name | Category | In Sub-Main Macro | Doc Status |
---|---|---|---|
calc_graph | auxiliary | graph_glue, graph_qid | ready |
Это шестой шаг макроса graph
. Это завершающий этап, в ходе которого graph_qid
использует данные из предыдущих макросов для формирования итоговой таблицы, где каждому уникальному ключу соответствует идентификатор группы (qid
).
Этот макрос принимает следующие аргументы:
params=none,
stage_name=none,
limit0=none
Сначала в макросе происходит настройка материализации данных: устанавливается порядок сортировки данных по дате, ссылке и идентификатору.
pre_hook
указывает на необходимость выполнения предварительного хука при помощи вспомогательного макроса calc_graph перед выполнением запроса.
Далее происходит выборка данных для формирования итоговой таблицы: каждому уникальному ключу (__link, __datetime, __id
) соответствует qid
из ранее созданной таблицы graph_glue
. Основой запроса является таблица graph_glue
, которая соединена с таблицей graph_lookup
по key_number = node_id_left
Если аргумент limit0
активирован, то в конце SQL-запроса будет добавлено LIMIT 0
.
Файл в формате sql в папке models. Название файла graph_qid
Содержимое файла:
-- depends_on: {{ ref('graph_lookup') }}
-- depends_on: {{ ref('graph_glue') }}
{{ datacraft.graph() }}